<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>
<body>
    <script src="d3.v4.min.js"></script>
    <script>
        const width = 960
        height =600;
        radius = 15

        const svg = d3.select("body")
        .append("svg")
        .attr("width",width)
        .attr("height",height)
        // .attr("stroke-width", 2);

        const nodes = d3.range(20)
        .map((d,i)=>{
            return {
    x: Math.random() * (width - radius * 2) + radius,
    y: Math.random() * (height - radius * 2) + radius,
  }
        })


        // const color = d3.scale.category10()

        // svg.append("g")
        // .selectAll("circle")
        // .data(nodes)
        // .enter()
        // .append("circle")
        // .attr("cx",d=>{
        //     return d.x
        // })
        // .attr("cy",d=>{
        //     return d.y
        //     })
        // .attr("r",d=>{
        //     return radius
        // })
        // .attr("fill",(d,i)=>{
        //     return color(i%10)
        // })
        // // .attr("stroke","#000")

        // // const voronoiData

        const voronoi = d3.voronoi()
        .extent([[0,0],[width,height]])
        
        const data = nodes.map((d,i)=>{
            return [d.x,d.y]
        })


        const voronoidata = voronoi(data)
        .polygons()

        console.log(voronoidata);

        const path = svg.append("g")
        .selectAll("path")
        .data(voronoidata)
        .enter()//!!!!!!!!!!!!!!!!!
        .append("path")
        .attr("stroke","#000")
        .attr("stroke-width",0.35)
        .attr("d",(d)=>{
            return "M" + d.join("L") + "Z"
        })
        .attr("fill","none")
    </script>
</body>
</html>